package cn.chengpengper.im.sdk.client;

import cn.chengpengper.im.common.domain.enums.IMTerminalType;
import cn.chengpengper.im.common.domain.model.ImGroupMessage;
import cn.chengpengper.im.common.domain.model.ImPrivateMessage;

import java.util.List;
import java.util.Map;

public interface ImClient {

    <T> void sendPrivateMessage(ImPrivateMessage<T> message);

    <T> void sendGroupMessage(ImGroupMessage<T> message);

    Boolean isOnline(Long userId);
    List<Long> getOnlineUserList(List<Long> userIds);
    Map<Long,List<IMTerminalType>> getOnlineTerminal(List<Long> userIds);
}
